Deavmi's coding shack
unit.go HEAD (47f33d26) Text, 1.09 KB
Tff7b72package Te6edf3main
Tff7b72import Tb4b4b4(
Ta5d6ff"fmt"
Te6edf3nslices Ta5d6ff"new.git.deavmi.assigned.network/deavmi/go-niknaks.git/slices"
Tb4b4b4)
Tff7b72type Te6edf3Unit Tff7b72struct Tb4b4b4{
T8b949e// name of the unit
Te6edf3name Tffa657string
T8b949e// names of (any) units this depends on
Te6edf3dependencies Tb4b4b4[Tb4b4b4]Tffa657string
T8b949e// from (TODO: not needed but informative?)
Te6edf3path Tffa657string
Te6edf3command Tffa657string
Te6edf3args Tb4b4b4[Tb4b4b4]Tffa657string
Te6edf3uid Tffa657int
Te6edf3gid Tffa657int
T8b949e// environment variables
Te6edf3envs Tffa657mapTb4b4b4[Tffa657stringTb4b4b4]Tffa657string
Tb4b4b4}
Tff7b72func Te6edf3NewTb4b4b4(Te6edf3unitName Tffa657stringTb4b4b4) Te6edf3Unit Tb4b4b4{
Tff7b72return Te6edf3UnitTb4b4b4{Te6edf3nameTb4b4b4: Te6edf3unitNameTb4b4b4, Te6edf3envsTb4b4b4: Tffa657mapTb4b4b4[Tffa657stringTb4b4b4]Tffa657stringTb4b4b4{Tb4b4b4}Tb4b4b4}
Tb4b4b4}
Tff7b72func Tb4b4b4(Te6edf3u Te6edf3UnitTb4b4b4) Te6edf3NameTb4b4b4(Tb4b4b4) Tffa657string Tb4b4b4{
Tff7b72return Te6edf3uTb4b4b4.Te6edf3name
Tb4b4b4}
Tff7b72func Tb4b4b4(Te6edf3u Te6edf3UnitTb4b4b4) Te6edf3DepsTb4b4b4(Tb4b4b4) Tb4b4b4[Tb4b4b4]Tffa657string Tb4b4b4{
Tff7b72return Te6edf3nslicesTb4b4b4.Te6edf3CopyTb4b4b4(Te6edf3uTb4b4b4.Te6edf3dependenciesTb4b4b4)
Tb4b4b4}
Tff7b72func Tb4b4b4(Te6edf3u Te6edf3UnitTb4b4b4) Te6edf3StringTb4b4b4(Tb4b4b4) Tffa657string Tb4b4b4{
Tff7b72return Te6edf3fmtTb4b4b4.Te6edf3SprintfTb4b4b4(Ta5d6ff"Unit[%s] (deps: %s) @ %s"Tb4b4b4, Te6edf3uTb4b4b4.Te6edf3nameTb4b4b4, Te6edf3uTb4b4b4.Te6edf3dependenciesTb4b4b4, Te6edf3uTb4b4b4.Te6edf3pathTb4b4b4)
Tb4b4b4}
Tff7b72func Tb4b4b4(Te6edf3u Tff7b72*Te6edf3UnitTb4b4b4) Te6edf3AddEnvTb4b4b4(Te6edf3name Tffa657stringTb4b4b4, Te6edf3value Tffa657stringTb4b4b4) Tb4b4b4{
Te6edf3uTb4b4b4.Te6edf3envsTb4b4b4[Te6edf3nameTb4b4b4] Tff7b72= Te6edf3value
Tb4b4b4}
Tff7b72func Tb4b4b4(Te6edf3u Tff7b72*Te6edf3UnitTb4b4b4) Te6edf3AddDepTb4b4b4(Te6edf3dep Tffa657stringTb4b4b4) Tb4b4b4{
Te6edf3uTb4b4b4.Te6edf3dependencies Tff7b72= Tffa657appendTb4b4b4(Te6edf3uTb4b4b4.Te6edf3dependenciesTb4b4b4, Te6edf3depTb4b4b4)
Te6edf3lTb4b4b4.Te6edf3DebugTb4b4b4(Ta5d6ff"Added dependency '%s' to %s"Tb4b4b4, Te6edf3depTb4b4b4, Te6edf3uTb4b4b4.Te6edf3nameTb4b4b4)
Tb4b4b4}
Tff7b72func Tb4b4b4(Te6edf3u Te6edf3UnitTb4b4b4) Te6edf3GetEnvsTb4b4b4(Tb4b4b4) Tffa657mapTb4b4b4[Tffa657stringTb4b4b4]Tffa657string Tb4b4b4{
Tff7b72var Te6edf3envsCpy Tffa657mapTb4b4b4[Tffa657stringTb4b4b4]Tffa657string Tff7b72= Tffa657mapTb4b4b4[Tffa657stringTb4b4b4]Tffa657stringTb4b4b4{Tb4b4b4}
Tff7b72for Te6edf3kTb4b4b4, Te6edf3v Tff7b72:= Tff7b72range Te6edf3uTb4b4b4.Te6edf3envs Tb4b4b4{
Te6edf3envsCpyTb4b4b4[Te6edf3kTb4b4b4] Tff7b72= Te6edf3v
Tb4b4b4}
Tff7b72return Te6edf3envsCpy
Tb4b4b4}
Served by rngit 1.5.0 - Generated in 0.05s